#ifndef _BSP_H_
#define _BSP_H_

#include "driver/i2c_master.h"

#include "driver/i2s_std.h"
#include "driver/i2s_tdm.h"
#include "soc/soc_caps.h"

#include "esp_codec_dev.h"
#include "esp_codec_dev_defaults.h"

// I2C总线初始化 - 用于控制ES8311芯片
void bsp_sound_i2c_Init();
// I2S接口初始化 - 用于音频数据传输
void bsp_sound_i2s_Init();
// ES8311编解码器初始化 - 音频处理核心
void bsp_sound_es8311_Init();

void bsp_sound_Init(void);
void bsp_sound_open(void);

void bsp_sound_close(void);

int bsp_sound_write(uint8_t *data, int size);

int bsp_sound_read(uint8_t data[], int size);


void setVolume(int volume);
void setMute(bool mute);

#endif // _BSP_H_